package com.junzhiit.nengji.shop.dao;

import java.util.List;

import com.bainaeco.framework.base.dao.BaseDAO;
import com.bainaeco.framework.base.model.BaseModel;
import com.junzhiit.nengji.shop.bo.GoodsCountBO;
import com.junzhiit.nengji.shop.bo.HomeSituationBO;
import com.junzhiit.nengji.shop.bo.HomeTableBO;
import com.junzhiit.nengji.shop.bo.NoticeBO;
import com.junzhiit.nengji.shop.bo.OrdersCountBO;
import com.junzhiit.nengji.shop.bo.OrdersMoneyBO;
import com.junzhiit.nengji.shop.bo.ShopIncomeBO;
import com.junzhiit.nengji.shop.model.Shop;

public interface HomeDAO extends BaseDAO<BaseModel> {
	/**
	 * 
	 * TODO 查询商户首页顶部概况
	 * @author FebRosy
	 * @time 2018年4月8日 下午5:49:17
	 * @return HomeSituationBO
	 */
	public HomeSituationBO getheaderInfo(String shopId);
	
	/**
	 * 
	 * TODO 查询商户订单营业额收入详情
	 * @author FebRosy
	 * @time 2018年4月8日 下午8:17:39
	 * @return List<OrdersMoneyBO>
	 */
	public List<OrdersMoneyBO> queryOrdersMoney(String shopId,int year,int month);
	
	/**
	 * 
	 * TODO 查询商户订单每月下单数详情
	 * @author FebRosy
	 * @time 2018年4月8日 下午8:17:55
	 * @return List<OrdersCountBO>
	 */
	public List<OrdersCountBO> queryOrdersCount(String shopId,int year,int month);
	
	/**
	 * 
	 * TODO 查询商户每月销量前十商品
	 * @author FebRosy
	 * @time 2018年4月8日 下午8:19:04
	 * @return List<GoodsCountBO>
	 */
	public List<GoodsCountBO> queryForGoods(String shopId,int month);
	
	/**
	 * 
	 * TODO 查询所有商户每月营业额收入详情
	 * @author Zaki
	 * @time 2018年4月10日 下午7:41:43
	 * @return List<OrdersMoneyBO>
	 */
	public List<OrdersMoneyBO> queryAllOrdersMoney(int year,int month);
	
	/**
	 * 
	 * TODO 查询所有商户每月下单数详情
	 * @author Zaki
	 * @time 2018年4月10日 下午7:44:46
	 * @return List<OrdersCountBO>
	 */
	public List<OrdersCountBO> queryAllOrdersCount(int year,int month);
	
	public List<NoticeBO> queryInternalNotice();
	
	public List<NoticeBO> queryInternalShopNotice();
	
	/**
	 * 
	 * TODO 查询连锁品牌下的商品销售
	 * @author Zaki
	 * @time 2018年6月19日 上午11:58:29
	 * @return List<GoodsCountBO>
	 */
	public List<GoodsCountBO> querySsoGoods(HomeTableBO homeTableBO);
	
	/**
	 * 
	 * TODO 查询连锁品牌下的店铺销售额
	 * @author Zaki
	 * @time 2018年6月19日 下午2:16:46
	 * @return List<ShopIncomeBO>
	 */
	public List<ShopIncomeBO> queryShopIncome(HomeTableBO homeTableBO);
	
	/**
	 * 
	 * TODO 查询所有品牌下的店铺
	 * @author Zaki
	 * @time 2018年6月25日 下午3:16:33
	 * @return List<Shop>
	 */
	public List<Shop> queryAllShop(String chainId);
	
}
